<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>determine_shape_model_params [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_matching.html">Matching</a> / <a href="toc_matching_shapebased.html">Shape-Based</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">determine_shape_model_params</span><span data-if="c" style="display:none;">T_determine_shape_model_params</span><span data-if="cpp" style="display:none;">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none;">DetermineShapeModelParams</span><span data-if="python" style="display:none;">determine_shape_model_params</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">determine_shape_model_params</span><span data-if="c" style="display:none;">T_determine_shape_model_params</span><span data-if="cpp" style="display:none;">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none;">DetermineShapeModelParams</span><span data-if="python" style="display:none;">determine_shape_model_params</span></code> — Determine the parameters of a shape model.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>determine_shape_model_params</b>(<a href="#Template"><i>Template</i></a> :  : <a href="#NumLevels"><i>NumLevels</i></a>, <a href="#AngleStart"><i>AngleStart</i></a>, <a href="#AngleExtent"><i>AngleExtent</i></a>, <a href="#ScaleMin"><i>ScaleMin</i></a>, <a href="#ScaleMax"><i>ScaleMax</i></a>, <a href="#Optimization"><i>Optimization</i></a>, <a href="#Metric"><i>Metric</i></a>, <a href="#Contrast"><i>Contrast</i></a>, <a href="#MinContrast"><i>MinContrast</i></a>, <a href="#Parameters"><i>参数表</i></a> : <a href="#ParameterName"><i>ParameterName</i></a>, <a href="#ParameterValue"><i>ParameterValue</i></a>)</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>T_determine_shape_model_params</b>(const Hobject <a href="#Template"><i>Template</i></a>, const Htuple <a href="#NumLevels"><i>NumLevels</i></a>, const Htuple <a href="#AngleStart"><i>AngleStart</i></a>, const Htuple <a href="#AngleExtent"><i>AngleExtent</i></a>, const Htuple <a href="#ScaleMin"><i>ScaleMin</i></a>, const Htuple <a href="#ScaleMax"><i>ScaleMax</i></a>, const Htuple <a href="#Optimization"><i>Optimization</i></a>, const Htuple <a href="#Metric"><i>Metric</i></a>, const Htuple <a href="#Contrast"><i>Contrast</i></a>, const Htuple <a href="#MinContrast"><i>MinContrast</i></a>, const Htuple <a href="#Parameters"><i>参数表</i></a>, Htuple* <a href="#ParameterName"><i>ParameterName</i></a>, Htuple* <a href="#ParameterValue"><i>ParameterValue</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>DetermineShapeModelParams</b>(const HObject&amp; <a href="#Template"><i>Template</i></a>, const HTuple&amp; <a href="#NumLevels"><i>NumLevels</i></a>, const HTuple&amp; <a href="#AngleStart"><i>AngleStart</i></a>, const HTuple&amp; <a href="#AngleExtent"><i>AngleExtent</i></a>, const HTuple&amp; <a href="#ScaleMin"><i>ScaleMin</i></a>, const HTuple&amp; <a href="#ScaleMax"><i>ScaleMax</i></a>, const HTuple&amp; <a href="#Optimization"><i>Optimization</i></a>, const HTuple&amp; <a href="#Metric"><i>Metric</i></a>, const HTuple&amp; <a href="#Contrast"><i>Contrast</i></a>, const HTuple&amp; <a href="#MinContrast"><i>MinContrast</i></a>, const HTuple&amp; <a href="#Parameters"><i>参数表</i></a>, HTuple* <a href="#ParameterName"><i>ParameterName</i></a>, HTuple* <a href="#ParameterValue"><i>ParameterValue</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>::<b>DetermineShapeModelParams</b>(const HTuple&amp; <a href="#NumLevels"><i>NumLevels</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, const HTuple&amp; <a href="#ScaleMin"><i>ScaleMin</i></a>, const HTuple&amp; <a href="#ScaleMax"><i>ScaleMax</i></a>, const HString&amp; <a href="#Optimization"><i>Optimization</i></a>, const HString&amp; <a href="#Metric"><i>Metric</i></a>, const HTuple&amp; <a href="#Contrast"><i>Contrast</i></a>, const HTuple&amp; <a href="#MinContrast"><i>MinContrast</i></a>, const HTuple&amp; <a href="#Parameters"><i>参数表</i></a>, HTuple* <a href="#ParameterValue"><i>ParameterValue</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>::<b>DetermineShapeModelParams</b>(Hlong <a href="#NumLevels"><i>NumLevels</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#ScaleMin"><i>ScaleMin</i></a>, double <a href="#ScaleMax"><i>ScaleMax</i></a>, const HString&amp; <a href="#Optimization"><i>Optimization</i></a>, const HString&amp; <a href="#Metric"><i>Metric</i></a>, Hlong <a href="#Contrast"><i>Contrast</i></a>, Hlong <a href="#MinContrast"><i>MinContrast</i></a>, const HString&amp; <a href="#Parameters"><i>参数表</i></a>, HTuple* <a href="#ParameterValue"><i>ParameterValue</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>::<b>DetermineShapeModelParams</b>(Hlong <a href="#NumLevels"><i>NumLevels</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#ScaleMin"><i>ScaleMin</i></a>, double <a href="#ScaleMax"><i>ScaleMax</i></a>, const char* <a href="#Optimization"><i>Optimization</i></a>, const char* <a href="#Metric"><i>Metric</i></a>, Hlong <a href="#Contrast"><i>Contrast</i></a>, Hlong <a href="#MinContrast"><i>MinContrast</i></a>, const char* <a href="#Parameters"><i>参数表</i></a>, HTuple* <a href="#ParameterValue"><i>ParameterValue</i></a>) const</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>::<b>DetermineShapeModelParams</b>(Hlong <a href="#NumLevels"><i>NumLevels</i></a>, double <a href="#AngleStart"><i>AngleStart</i></a>, double <a href="#AngleExtent"><i>AngleExtent</i></a>, double <a href="#ScaleMin"><i>ScaleMin</i></a>, double <a href="#ScaleMax"><i>ScaleMax</i></a>, const wchar_t* <a href="#Optimization"><i>Optimization</i></a>, const wchar_t* <a href="#Metric"><i>Metric</i></a>, Hlong <a href="#Contrast"><i>Contrast</i></a>, Hlong <a href="#MinContrast"><i>MinContrast</i></a>, const wchar_t* <a href="#Parameters"><i>参数表</i></a>, HTuple* <a href="#ParameterValue"><i>ParameterValue</i></a>) const  <span class="signnote">
            (
            Windows only)
          </span></code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>DetermineShapeModelParams</b>(<a href="HObject.html">HObject</a> <a href="#Template"><i>template</i></a>, <a href="HTuple.html">HTuple</a> <a href="#NumLevels"><i>numLevels</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleStart"><i>angleStart</i></a>, <a href="HTuple.html">HTuple</a> <a href="#AngleExtent"><i>angleExtent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ScaleMin"><i>scaleMin</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ScaleMax"><i>scaleMax</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Optimization"><i>optimization</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Metric"><i>metric</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Contrast"><i>contrast</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MinContrast"><i>minContrast</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Parameters"><i>参数表</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ParameterName"><i>parameterName</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ParameterValue"><i>parameterValue</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>.<b>DetermineShapeModelParams</b>(<a href="HTuple.html">HTuple</a> <a href="#NumLevels"><i>numLevels</i></a>, double <a href="#AngleStart"><i>angleStart</i></a>, double <a href="#AngleExtent"><i>angleExtent</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ScaleMin"><i>scaleMin</i></a>, <a href="HTuple.html">HTuple</a> <a href="#ScaleMax"><i>scaleMax</i></a>, string <a href="#Optimization"><i>optimization</i></a>, string <a href="#Metric"><i>metric</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Contrast"><i>contrast</i></a>, <a href="HTuple.html">HTuple</a> <a href="#MinContrast"><i>minContrast</i></a>, <a href="HTuple.html">HTuple</a> <a href="#Parameters"><i>参数表</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ParameterValue"><i>parameterValue</i></a>)</code></p>
<p>
<code><a href="HTuple.html">HTuple</a> <a href="HImage.html">HImage</a>.<b>DetermineShapeModelParams</b>(int <a href="#NumLevels"><i>numLevels</i></a>, double <a href="#AngleStart"><i>angleStart</i></a>, double <a href="#AngleExtent"><i>angleExtent</i></a>, double <a href="#ScaleMin"><i>scaleMin</i></a>, double <a href="#ScaleMax"><i>scaleMax</i></a>, string <a href="#Optimization"><i>optimization</i></a>, string <a href="#Metric"><i>metric</i></a>, int <a href="#Contrast"><i>contrast</i></a>, int <a href="#MinContrast"><i>minContrast</i></a>, string <a href="#Parameters"><i>参数表</i></a>, out <a href="HTuple.html">HTuple</a> <a href="#ParameterValue"><i>parameterValue</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>determine_shape_model_params</b>(<a href="#Template"><i>template</i></a>: HObject, <a href="#NumLevels"><i>num_levels</i></a>: Union[int, str], <a href="#AngleStart"><i>angle_start</i></a>: float, <a href="#AngleExtent"><i>angle_extent</i></a>: float, <a href="#ScaleMin"><i>scale_min</i></a>: MaybeSequence[float], <a href="#ScaleMax"><i>scale_max</i></a>: MaybeSequence[float], <a href="#Optimization"><i>optimization</i></a>: str, <a href="#Metric"><i>metric</i></a>: str, <a href="#Contrast"><i>contrast</i></a>: MaybeSequence[Union[int, str]], <a href="#MinContrast"><i>min_contrast</i></a>: Union[int, str], <a href="#Parameters"><i>参数表</i></a>: MaybeSequence[str]) -&gt; Tuple[Sequence[str], Sequence[Union[int, float]]]</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p><code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> determines certain parameters
of a shape model automatically from the model image
<a href="#Template"><i><code><span data-if="hdevelop" style="display:inline">Template</span><span data-if="c" style="display:none">Template</span><span data-if="cpp" style="display:none">Template</span><span data-if="com" style="display:none">Template</span><span data-if="dotnet" style="display:none">template</span><span data-if="python" style="display:none">template</span></code></i></a>.  The parameters to be determined can be specified
with <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>.  <code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> can
be used to determine the same parameters that are determined
automatically when the respective parameter in
<a href="create_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_shape_model</span><span data-if="c" style="display:none">create_shape_model</span><span data-if="cpp" style="display:none">CreateShapeModel</span><span data-if="com" style="display:none">CreateShapeModel</span><span data-if="dotnet" style="display:none">CreateShapeModel</span><span data-if="python" style="display:none">create_shape_model</span></code></a>, <a href="create_scaled_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_scaled_shape_model</span><span data-if="c" style="display:none">create_scaled_shape_model</span><span data-if="cpp" style="display:none">CreateScaledShapeModel</span><span data-if="com" style="display:none">CreateScaledShapeModel</span><span data-if="dotnet" style="display:none">CreateScaledShapeModel</span><span data-if="python" style="display:none">create_scaled_shape_model</span></code></a>, or
<a href="create_aniso_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_aniso_shape_model</span><span data-if="c" style="display:none">create_aniso_shape_model</span><span data-if="cpp" style="display:none">CreateAnisoShapeModel</span><span data-if="com" style="display:none">CreateAnisoShapeModel</span><span data-if="dotnet" style="display:none">CreateAnisoShapeModel</span><span data-if="python" style="display:none">create_aniso_shape_model</span></code></a> is set to <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>: the
number of pyramid levels (<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> =
<i><span data-if="hdevelop" style="display:inline">'num_levels'</span><span data-if="c" style="display:none">"num_levels"</span><span data-if="cpp" style="display:none">"num_levels"</span><span data-if="com" style="display:none">"num_levels"</span><span data-if="dotnet" style="display:none">"num_levels"</span><span data-if="python" style="display:none">"num_levels"</span></i>), the angle step length (<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>
= <i><span data-if="hdevelop" style="display:inline">'angle_step'</span><span data-if="c" style="display:none">"angle_step"</span><span data-if="cpp" style="display:none">"angle_step"</span><span data-if="com" style="display:none">"angle_step"</span><span data-if="dotnet" style="display:none">"angle_step"</span><span data-if="python" style="display:none">"angle_step"</span></i>), the scale step length
(<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> = <i><span data-if="hdevelop" style="display:inline">'scale_step'</span><span data-if="c" style="display:none">"scale_step"</span><span data-if="cpp" style="display:none">"scale_step"</span><span data-if="com" style="display:none">"scale_step"</span><span data-if="dotnet" style="display:none">"scale_step"</span><span data-if="python" style="display:none">"scale_step"</span></i> for isotropic scaling
and <i><span data-if="hdevelop" style="display:inline">'scale_r_step'</span><span data-if="c" style="display:none">"scale_r_step"</span><span data-if="cpp" style="display:none">"scale_r_step"</span><span data-if="com" style="display:none">"scale_r_step"</span><span data-if="dotnet" style="display:none">"scale_r_step"</span><span data-if="python" style="display:none">"scale_r_step"</span></i> and/or <i><span data-if="hdevelop" style="display:inline">'scale_c_step'</span><span data-if="c" style="display:none">"scale_c_step"</span><span data-if="cpp" style="display:none">"scale_c_step"</span><span data-if="com" style="display:none">"scale_c_step"</span><span data-if="dotnet" style="display:none">"scale_c_step"</span><span data-if="python" style="display:none">"scale_c_step"</span></i> for
anisotropic scaling), the kind of optimization (<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>
= <i><span data-if="hdevelop" style="display:inline">'optimization'</span><span data-if="c" style="display:none">"optimization"</span><span data-if="cpp" style="display:none">"optimization"</span><span data-if="com" style="display:none">"optimization"</span><span data-if="dotnet" style="display:none">"optimization"</span><span data-if="python" style="display:none">"optimization"</span></i>), the threshold (<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> =
<i><span data-if="hdevelop" style="display:inline">'contrast'</span><span data-if="c" style="display:none">"contrast"</span><span data-if="cpp" style="display:none">"contrast"</span><span data-if="com" style="display:none">"contrast"</span><span data-if="dotnet" style="display:none">"contrast"</span><span data-if="python" style="display:none">"contrast"</span></i>) or the hysteresis thresholds
(<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> = <i><span data-if="hdevelop" style="display:inline">'contrast_hyst'</span><span data-if="c" style="display:none">"contrast_hyst"</span><span data-if="cpp" style="display:none">"contrast_hyst"</span><span data-if="com" style="display:none">"contrast_hyst"</span><span data-if="dotnet" style="display:none">"contrast_hyst"</span><span data-if="python" style="display:none">"contrast_hyst"</span></i>) for the contrast,
the minimum size of the object parts (<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> =
<i><span data-if="hdevelop" style="display:inline">'min_size'</span><span data-if="c" style="display:none">"min_size"</span><span data-if="cpp" style="display:none">"min_size"</span><span data-if="com" style="display:none">"min_size"</span><span data-if="dotnet" style="display:none">"min_size"</span><span data-if="python" style="display:none">"min_size"</span></i>), and the minimum contrast (<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>
= <i><span data-if="hdevelop" style="display:inline">'min_contrast'</span><span data-if="c" style="display:none">"min_contrast"</span><span data-if="cpp" style="display:none">"min_contrast"</span><span data-if="com" style="display:none">"min_contrast"</span><span data-if="dotnet" style="display:none">"min_contrast"</span><span data-if="python" style="display:none">"min_contrast"</span></i>).  By passing a tuple of the above
values in <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>, an arbitrary combination of these
parameters can be determined.  If all of the above parameters should
be determined, the value <i><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span></i> can be passed.  In this case
both hysteresis thresholds are determined, i.e., 该算子
behaves like passing <i><span data-if="hdevelop" style="display:inline">'contrast_hyst'</span><span data-if="c" style="display:none">"contrast_hyst"</span><span data-if="cpp" style="display:none">"contrast_hyst"</span><span data-if="com" style="display:none">"contrast_hyst"</span><span data-if="dotnet" style="display:none">"contrast_hyst"</span><span data-if="python" style="display:none">"contrast_hyst"</span></i> instead of
<i><span data-if="hdevelop" style="display:inline">'contrast'</span><span data-if="c" style="display:none">"contrast"</span><span data-if="cpp" style="display:none">"contrast"</span><span data-if="com" style="display:none">"contrast"</span><span data-if="dotnet" style="display:none">"contrast"</span><span data-if="python" style="display:none">"contrast"</span></i>.
</p>
<p><code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> is mainly useful to determine
the above parameters before creating the model, e.g., in an
interactive system, which makes suggestions for these parameters to
the user, but enables the user to modify the suggested values.
</p>
<p>The automatically determined parameters are returned as a name-value
pair in <a href="#ParameterName"><i><code><span data-if="hdevelop" style="display:inline">ParameterName</span><span data-if="c" style="display:none">ParameterName</span><span data-if="cpp" style="display:none">ParameterName</span><span data-if="com" style="display:none">ParameterName</span><span data-if="dotnet" style="display:none">parameterName</span><span data-if="python" style="display:none">parameter_name</span></code></i></a> and <a href="#ParameterValue"><i><code><span data-if="hdevelop" style="display:inline">ParameterValue</span><span data-if="c" style="display:none">ParameterValue</span><span data-if="cpp" style="display:none">ParameterValue</span><span data-if="com" style="display:none">ParameterValue</span><span data-if="dotnet" style="display:none">parameterValue</span><span data-if="python" style="display:none">parameter_value</span></code></i></a>.  The
parameter names in <a href="#ParameterName"><i><code><span data-if="hdevelop" style="display:inline">ParameterName</span><span data-if="c" style="display:none">ParameterName</span><span data-if="cpp" style="display:none">ParameterName</span><span data-if="com" style="display:none">ParameterName</span><span data-if="dotnet" style="display:none">parameterName</span><span data-if="python" style="display:none">parameter_name</span></code></i></a> are identical to the names
in <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>, where, of course, the value <i><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span></i>
is replaced by the actual parameter names. An exception is the
parameter <i><span data-if="hdevelop" style="display:inline">'contrast_hyst'</span><span data-if="c" style="display:none">"contrast_hyst"</span><span data-if="cpp" style="display:none">"contrast_hyst"</span><span data-if="com" style="display:none">"contrast_hyst"</span><span data-if="dotnet" style="display:none">"contrast_hyst"</span><span data-if="python" style="display:none">"contrast_hyst"</span></i>, for which the two values
<i><span data-if="hdevelop" style="display:inline">'contrast_low'</span><span data-if="c" style="display:none">"contrast_low"</span><span data-if="cpp" style="display:none">"contrast_low"</span><span data-if="com" style="display:none">"contrast_low"</span><span data-if="dotnet" style="display:none">"contrast_low"</span><span data-if="python" style="display:none">"contrast_low"</span></i> and <i><span data-if="hdevelop" style="display:inline">'contrast_high'</span><span data-if="c" style="display:none">"contrast_high"</span><span data-if="cpp" style="display:none">"contrast_high"</span><span data-if="com" style="display:none">"contrast_high"</span><span data-if="dotnet" style="display:none">"contrast_high"</span><span data-if="python" style="display:none">"contrast_high"</span></i> are returned.
</p>
<p>The remaining parameters (<a href="#NumLevels"><i><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></i></a>, <a href="#AngleStart"><i><code><span data-if="hdevelop" style="display:inline">AngleStart</span><span data-if="c" style="display:none">AngleStart</span><span data-if="cpp" style="display:none">AngleStart</span><span data-if="com" style="display:none">AngleStart</span><span data-if="dotnet" style="display:none">angleStart</span><span data-if="python" style="display:none">angle_start</span></code></i></a>,
<a href="#AngleExtent"><i><code><span data-if="hdevelop" style="display:inline">AngleExtent</span><span data-if="c" style="display:none">AngleExtent</span><span data-if="cpp" style="display:none">AngleExtent</span><span data-if="com" style="display:none">AngleExtent</span><span data-if="dotnet" style="display:none">angleExtent</span><span data-if="python" style="display:none">angle_extent</span></code></i></a>, <a href="#ScaleMin"><i><code><span data-if="hdevelop" style="display:inline">ScaleMin</span><span data-if="c" style="display:none">ScaleMin</span><span data-if="cpp" style="display:none">ScaleMin</span><span data-if="com" style="display:none">ScaleMin</span><span data-if="dotnet" style="display:none">scaleMin</span><span data-if="python" style="display:none">scale_min</span></code></i></a>, <a href="#ScaleMax"><i><code><span data-if="hdevelop" style="display:inline">ScaleMax</span><span data-if="c" style="display:none">ScaleMax</span><span data-if="cpp" style="display:none">ScaleMax</span><span data-if="com" style="display:none">ScaleMax</span><span data-if="dotnet" style="display:none">scaleMax</span><span data-if="python" style="display:none">scale_max</span></code></i></a>,
<a href="#Optimization"><i><code><span data-if="hdevelop" style="display:inline">Optimization</span><span data-if="c" style="display:none">Optimization</span><span data-if="cpp" style="display:none">Optimization</span><span data-if="com" style="display:none">Optimization</span><span data-if="dotnet" style="display:none">optimization</span><span data-if="python" style="display:none">optimization</span></code></i></a>, <a href="#Metric"><i><code><span data-if="hdevelop" style="display:inline">Metric</span><span data-if="c" style="display:none">Metric</span><span data-if="cpp" style="display:none">Metric</span><span data-if="com" style="display:none">Metric</span><span data-if="dotnet" style="display:none">metric</span><span data-if="python" style="display:none">metric</span></code></i></a>, <a href="#Contrast"><i><code><span data-if="hdevelop" style="display:inline">Contrast</span><span data-if="c" style="display:none">Contrast</span><span data-if="cpp" style="display:none">Contrast</span><span data-if="com" style="display:none">Contrast</span><span data-if="dotnet" style="display:none">contrast</span><span data-if="python" style="display:none">contrast</span></code></i></a>, and
<a href="#MinContrast"><i><code><span data-if="hdevelop" style="display:inline">MinContrast</span><span data-if="c" style="display:none">MinContrast</span><span data-if="cpp" style="display:none">MinContrast</span><span data-if="com" style="display:none">MinContrast</span><span data-if="dotnet" style="display:none">minContrast</span><span data-if="python" style="display:none">min_contrast</span></code></i></a>) have the same meaning as in
<a href="create_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_shape_model</span><span data-if="c" style="display:none">create_shape_model</span><span data-if="cpp" style="display:none">CreateShapeModel</span><span data-if="com" style="display:none">CreateShapeModel</span><span data-if="dotnet" style="display:none">CreateShapeModel</span><span data-if="python" style="display:none">create_shape_model</span></code></a>, <a href="create_scaled_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_scaled_shape_model</span><span data-if="c" style="display:none">create_scaled_shape_model</span><span data-if="cpp" style="display:none">CreateScaledShapeModel</span><span data-if="com" style="display:none">CreateScaledShapeModel</span><span data-if="dotnet" style="display:none">CreateScaledShapeModel</span><span data-if="python" style="display:none">create_scaled_shape_model</span></code></a>, and
<a href="create_aniso_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_aniso_shape_model</span><span data-if="c" style="display:none">create_aniso_shape_model</span><span data-if="cpp" style="display:none">CreateAnisoShapeModel</span><span data-if="com" style="display:none">CreateAnisoShapeModel</span><span data-if="dotnet" style="display:none">CreateAnisoShapeModel</span><span data-if="python" style="display:none">create_aniso_shape_model</span></code></a>.  The description of these
parameters can be looked up with these operators.  These parameters
are used by <code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> to calculate the
parameters to be determined in the same manner as in
<a href="create_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_shape_model</span><span data-if="c" style="display:none">create_shape_model</span><span data-if="cpp" style="display:none">CreateShapeModel</span><span data-if="com" style="display:none">CreateShapeModel</span><span data-if="dotnet" style="display:none">CreateShapeModel</span><span data-if="python" style="display:none">create_shape_model</span></code></a>, <a href="create_scaled_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_scaled_shape_model</span><span data-if="c" style="display:none">create_scaled_shape_model</span><span data-if="cpp" style="display:none">CreateScaledShapeModel</span><span data-if="com" style="display:none">CreateScaledShapeModel</span><span data-if="dotnet" style="display:none">CreateScaledShapeModel</span><span data-if="python" style="display:none">create_scaled_shape_model</span></code></a>, and
<a href="create_aniso_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_aniso_shape_model</span><span data-if="c" style="display:none">create_aniso_shape_model</span><span data-if="cpp" style="display:none">CreateAnisoShapeModel</span><span data-if="com" style="display:none">CreateAnisoShapeModel</span><span data-if="dotnet" style="display:none">CreateAnisoShapeModel</span><span data-if="python" style="display:none">create_aniso_shape_model</span></code></a>.  It should be noted that if the
parameters of a shape model with isotropic scaling should be
determined, i.e., if <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> contains
<i><span data-if="hdevelop" style="display:inline">'scale_step'</span><span data-if="c" style="display:none">"scale_step"</span><span data-if="cpp" style="display:none">"scale_step"</span><span data-if="com" style="display:none">"scale_step"</span><span data-if="dotnet" style="display:none">"scale_step"</span><span data-if="python" style="display:none">"scale_step"</span></i> either explicitly or implicitly via
<i><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span></i>, the parameters <a href="#ScaleMin"><i><code><span data-if="hdevelop" style="display:inline">ScaleMin</span><span data-if="c" style="display:none">ScaleMin</span><span data-if="cpp" style="display:none">ScaleMin</span><span data-if="com" style="display:none">ScaleMin</span><span data-if="dotnet" style="display:none">scaleMin</span><span data-if="python" style="display:none">scale_min</span></code></i></a> and
<a href="#ScaleMax"><i><code><span data-if="hdevelop" style="display:inline">ScaleMax</span><span data-if="c" style="display:none">ScaleMax</span><span data-if="cpp" style="display:none">ScaleMax</span><span data-if="com" style="display:none">ScaleMax</span><span data-if="dotnet" style="display:none">scaleMax</span><span data-if="python" style="display:none">scale_max</span></code></i></a> must contain one value each.  If the parameters of
a shape model with anisotropic scaling should be determined, i.e.,
if <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> contains <i><span data-if="hdevelop" style="display:inline">'scale_r_step'</span><span data-if="c" style="display:none">"scale_r_step"</span><span data-if="cpp" style="display:none">"scale_r_step"</span><span data-if="com" style="display:none">"scale_r_step"</span><span data-if="dotnet" style="display:none">"scale_r_step"</span><span data-if="python" style="display:none">"scale_r_step"</span></i> or
<i><span data-if="hdevelop" style="display:inline">'scale_c_step'</span><span data-if="c" style="display:none">"scale_c_step"</span><span data-if="cpp" style="display:none">"scale_c_step"</span><span data-if="com" style="display:none">"scale_c_step"</span><span data-if="dotnet" style="display:none">"scale_c_step"</span><span data-if="python" style="display:none">"scale_c_step"</span></i> either explicitly or implicitly, the
parameters <a href="#ScaleMin"><i><code><span data-if="hdevelop" style="display:inline">ScaleMin</span><span data-if="c" style="display:none">ScaleMin</span><span data-if="cpp" style="display:none">ScaleMin</span><span data-if="com" style="display:none">ScaleMin</span><span data-if="dotnet" style="display:none">scaleMin</span><span data-if="python" style="display:none">scale_min</span></code></i></a> and <a href="#ScaleMax"><i><code><span data-if="hdevelop" style="display:inline">ScaleMax</span><span data-if="c" style="display:none">ScaleMax</span><span data-if="cpp" style="display:none">ScaleMax</span><span data-if="com" style="display:none">ScaleMax</span><span data-if="dotnet" style="display:none">scaleMax</span><span data-if="python" style="display:none">scale_max</span></code></i></a> must contain two
values each.  In this case, the first value of the respective
parameter refers to the scaling in the row direction, while the
second value refers to the scaling in the column direction.
</p>
<p>Note that in <code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> some parameters
appear that can also be determined automatically
(<a href="#NumLevels"><i><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></i></a>, <a href="#Optimization"><i><code><span data-if="hdevelop" style="display:inline">Optimization</span><span data-if="c" style="display:none">Optimization</span><span data-if="cpp" style="display:none">Optimization</span><span data-if="com" style="display:none">Optimization</span><span data-if="dotnet" style="display:none">optimization</span><span data-if="python" style="display:none">optimization</span></code></i></a>, <a href="#Contrast"><i><code><span data-if="hdevelop" style="display:inline">Contrast</span><span data-if="c" style="display:none">Contrast</span><span data-if="cpp" style="display:none">Contrast</span><span data-if="com" style="display:none">Contrast</span><span data-if="dotnet" style="display:none">contrast</span><span data-if="python" style="display:none">contrast</span></code></i></a>,
<a href="#MinContrast"><i><code><span data-if="hdevelop" style="display:inline">MinContrast</span><span data-if="c" style="display:none">MinContrast</span><span data-if="cpp" style="display:none">MinContrast</span><span data-if="com" style="display:none">MinContrast</span><span data-if="dotnet" style="display:none">minContrast</span><span data-if="python" style="display:none">min_contrast</span></code></i></a>). If these parameters should not be determined
automatically, i.e., their name is not passed in
<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a>, the corresponding parameters must contain
valid values and must not be set to <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>. In contrast, if
these parameters are to be determined automatically, their values
are treated in the following way: If the optimization or the
(hysteresis) contrast is to be determined automatically, i.e.,
<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> contains the value <i><span data-if="hdevelop" style="display:inline">'optimization'</span><span data-if="c" style="display:none">"optimization"</span><span data-if="cpp" style="display:none">"optimization"</span><span data-if="com" style="display:none">"optimization"</span><span data-if="dotnet" style="display:none">"optimization"</span><span data-if="python" style="display:none">"optimization"</span></i> or
<i><span data-if="hdevelop" style="display:inline">'contrast'</span><span data-if="c" style="display:none">"contrast"</span><span data-if="cpp" style="display:none">"contrast"</span><span data-if="com" style="display:none">"contrast"</span><span data-if="dotnet" style="display:none">"contrast"</span><span data-if="python" style="display:none">"contrast"</span></i> (<i><span data-if="hdevelop" style="display:inline">'contrast_hyst'</span><span data-if="c" style="display:none">"contrast_hyst"</span><span data-if="cpp" style="display:none">"contrast_hyst"</span><span data-if="com" style="display:none">"contrast_hyst"</span><span data-if="dotnet" style="display:none">"contrast_hyst"</span><span data-if="python" style="display:none">"contrast_hyst"</span></i>), the values passed in
<a href="#Optimization"><i><code><span data-if="hdevelop" style="display:inline">Optimization</span><span data-if="c" style="display:none">Optimization</span><span data-if="cpp" style="display:none">Optimization</span><span data-if="com" style="display:none">Optimization</span><span data-if="dotnet" style="display:none">optimization</span><span data-if="python" style="display:none">optimization</span></code></i></a> and <a href="#Contrast"><i><code><span data-if="hdevelop" style="display:inline">Contrast</span><span data-if="c" style="display:none">Contrast</span><span data-if="cpp" style="display:none">Contrast</span><span data-if="com" style="display:none">Contrast</span><span data-if="dotnet" style="display:none">contrast</span><span data-if="python" style="display:none">contrast</span></code></i></a> are ignored. In
contrast, if the maximum number of pyramid levels or the minimum
contrast is to be determined automatically, i.e.,
<a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> contains the value <i><span data-if="hdevelop" style="display:inline">'num_levels'</span><span data-if="c" style="display:none">"num_levels"</span><span data-if="cpp" style="display:none">"num_levels"</span><span data-if="com" style="display:none">"num_levels"</span><span data-if="dotnet" style="display:none">"num_levels"</span><span data-if="python" style="display:none">"num_levels"</span></i> or
<i><span data-if="hdevelop" style="display:inline">'min_contrast'</span><span data-if="c" style="display:none">"min_contrast"</span><span data-if="cpp" style="display:none">"min_contrast"</span><span data-if="com" style="display:none">"min_contrast"</span><span data-if="dotnet" style="display:none">"min_contrast"</span><span data-if="python" style="display:none">"min_contrast"</span></i>, you can let HALCON determine suitable
values and at the same time specify an upper or lower boundary,
respectively:
</p>
<p>If the maximum number of pyramid levels should be specified in
advance, <a href="#NumLevels"><i><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></i></a> can be set to the particular value.  If
in this case <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> contains the value
<i><span data-if="hdevelop" style="display:inline">'num_levels'</span><span data-if="c" style="display:none">"num_levels"</span><span data-if="cpp" style="display:none">"num_levels"</span><span data-if="com" style="display:none">"num_levels"</span><span data-if="dotnet" style="display:none">"num_levels"</span><span data-if="python" style="display:none">"num_levels"</span></i>, the computed number of pyramid levels is at
most <a href="#NumLevels"><i><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></i></a>.  If <a href="#NumLevels"><i><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></i></a> is set to
<i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i> (or <i>0</i> for backwards compatibility), the
number of pyramid levels is determined without restrictions as large
as possible.
</p>
<p>If the minimum contrast should be specified in advance,
<a href="#MinContrast"><i><code><span data-if="hdevelop" style="display:inline">MinContrast</span><span data-if="c" style="display:none">MinContrast</span><span data-if="cpp" style="display:none">MinContrast</span><span data-if="com" style="display:none">MinContrast</span><span data-if="dotnet" style="display:none">minContrast</span><span data-if="python" style="display:none">min_contrast</span></code></i></a> can be set to the particular value.  If in this
case <a href="#Parameters"><i><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></i></a> contains the value <i><span data-if="hdevelop" style="display:inline">'min_contrast'</span><span data-if="c" style="display:none">"min_contrast"</span><span data-if="cpp" style="display:none">"min_contrast"</span><span data-if="com" style="display:none">"min_contrast"</span><span data-if="dotnet" style="display:none">"min_contrast"</span><span data-if="python" style="display:none">"min_contrast"</span></i>,
the computed minimum contrast is at least <a href="#MinContrast"><i><code><span data-if="hdevelop" style="display:inline">MinContrast</span><span data-if="c" style="display:none">MinContrast</span><span data-if="cpp" style="display:none">MinContrast</span><span data-if="com" style="display:none">MinContrast</span><span data-if="dotnet" style="display:none">minContrast</span><span data-if="python" style="display:none">min_contrast</span></code></i></a>.  If
<a href="#MinContrast"><i><code><span data-if="hdevelop" style="display:inline">MinContrast</span><span data-if="c" style="display:none">MinContrast</span><span data-if="cpp" style="display:none">MinContrast</span><span data-if="com" style="display:none">MinContrast</span><span data-if="dotnet" style="display:none">minContrast</span><span data-if="python" style="display:none">min_contrast</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></i>, the minimum contrast
is determined without restrictions.</p>
<h2 id="sec_attention">注意</h2>
<p>In some cases, the maximum number of pyramid levels that is returned by
<code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> is higher than the number of levels
that are actually used in the shape model.  The latter
can be queried by using <a href="get_shape_model_params.html"><code><span data-if="hdevelop" style="display:inline">get_shape_model_params</span><span data-if="c" style="display:none">get_shape_model_params</span><span data-if="cpp" style="display:none">GetShapeModelParams</span><span data-if="com" style="display:none">GetShapeModelParams</span><span data-if="dotnet" style="display:none">GetShapeModelParams</span><span data-if="python" style="display:none">get_shape_model_params</span></code></a> after creating
the model. This might happen if the model is created by using
<a href="create_scaled_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_scaled_shape_model</span><span data-if="c" style="display:none">create_scaled_shape_model</span><span data-if="cpp" style="display:none">CreateScaledShapeModel</span><span data-if="com" style="display:none">CreateScaledShapeModel</span><span data-if="dotnet" style="display:none">CreateScaledShapeModel</span><span data-if="python" style="display:none">create_scaled_shape_model</span></code></a> or <a href="create_aniso_shape_model.html"><code><span data-if="hdevelop" style="display:inline">create_aniso_shape_model</span><span data-if="c" style="display:none">create_aniso_shape_model</span><span data-if="cpp" style="display:none">CreateAnisoShapeModel</span><span data-if="com" style="display:none">CreateAnisoShapeModel</span><span data-if="dotnet" style="display:none">CreateAnisoShapeModel</span><span data-if="python" style="display:none">create_aniso_shape_model</span></code></a>
and ScaleMin, ScaleRMin, or ScaleCMin is below <i>1.0</i>.</p>
<h2 id="sec_execution">运行信息</h2>
<ul>
  <li>多线程类型:可重入(与非独占操作符并行运行)。</li>
<li>多线程作用域:全局(可以从任何线程调用)。</li>
  <li>未经并行化处理。</li>
</ul>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="Template" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Template</span><span data-if="c" style="display:none">Template</span><span data-if="cpp" style="display:none">Template</span><span data-if="com" style="display:none">Template</span><span data-if="dotnet" style="display:none">template</span><span data-if="python" style="display:none">template</span></code></b> (input_object)  </span><span>(multichannel-)image <code>→</code> <span data-if="hdevelop" style="display:inline">object</span><span data-if="dotnet" style="display:none"><a href="HImage.html">HImage</a></span><span data-if="python" style="display:none">HObject</span><span data-if="cpp" style="display:none"><a href="HImage.html">HImage</a></span><span data-if="c" style="display:none">Hobject</span> (byte / uint2)</span>
</div>
<p class="pardesc">Input image whose domain will be used to create
the model.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="NumLevels" class="parname"><b><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></b> (input_control)  </span><span>integer <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, str]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer / </span><span data-if="hdevelop" style="display:inline">string)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long / </span><span data-if="dotnet" style="display:none">string)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i> / </span><span data-if="cpp" style="display:none">HString)</span><span data-if="c" style="display:none"> (<i>Hlong</i> / </span><span data-if="c" style="display:none">char*)</span></span>
</div>
<p class="pardesc">Maximum number of pyramid levels.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'auto'</span>
    <span data-if="c" style="display:none">"auto"</span>
    <span data-if="cpp" style="display:none">"auto"</span>
    <span data-if="com" style="display:none">"auto"</span>
    <span data-if="dotnet" style="display:none">"auto"</span>
    <span data-if="python" style="display:none">"auto"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span>0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, <span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleStart" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleStart</span><span data-if="c" style="display:none">AngleStart</span><span data-if="cpp" style="display:none">AngleStart</span><span data-if="com" style="display:none">AngleStart</span><span data-if="dotnet" style="display:none">angleStart</span><span data-if="python" style="display:none">angle_start</span></code></b> (input_control)  </span><span>angle.rad <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Smallest rotation of the model.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>-0.39</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>-3.14, -1.57, -0.79, -0.39, -0.20, 0.0</p>
</div>
  <div class="par">
<div class="parhead">
<span id="AngleExtent" class="parname"><b><code><span data-if="hdevelop" style="display:inline">AngleExtent</span><span data-if="c" style="display:none">AngleExtent</span><span data-if="cpp" style="display:none">AngleExtent</span><span data-if="com" style="display:none">AngleExtent</span><span data-if="dotnet" style="display:none">angleExtent</span><span data-if="python" style="display:none">angle_extent</span></code></b> (input_control)  </span><span>angle.rad <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">float</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Extent of the rotation angles.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.79</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>6.29, 3.14, 1.57, 0.79, 0.39</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>AngleExtent &gt;= 0</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ScaleMin" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ScaleMin</span><span data-if="c" style="display:none">ScaleMin</span><span data-if="cpp" style="display:none">ScaleMin</span><span data-if="com" style="display:none">ScaleMin</span><span data-if="dotnet" style="display:none">scaleMin</span><span data-if="python" style="display:none">scale_min</span></code></b> (input_control)  </span><span>number(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Minimum scale of the model.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>0.9</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>0.5, 0.6, 0.7, 0.8, 0.9, 1.0</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>ScaleMin &gt; 0</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ScaleMax" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ScaleMax</span><span data-if="c" style="display:none">ScaleMax</span><span data-if="cpp" style="display:none">ScaleMax</span><span data-if="com" style="display:none">ScaleMax</span><span data-if="dotnet" style="display:none">scaleMax</span><span data-if="python" style="display:none">scale_max</span></code></b> (input_control)  </span><span>number(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[float]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real)</span><span data-if="dotnet" style="display:none"> (<i>double</i>)</span><span data-if="cpp" style="display:none"> (<i>double</i>)</span><span data-if="c" style="display:none"> (<i>double</i>)</span></span>
</div>
<p class="pardesc">Maximum scale of the model.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>1.1</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span>1.0, 1.1, 1.2, 1.3, 1.4, 1.5</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>ScaleMax &gt;= ScaleMin</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Optimization" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Optimization</span><span data-if="c" style="display:none">Optimization</span><span data-if="cpp" style="display:none">Optimization</span><span data-if="com" style="display:none">Optimization</span><span data-if="dotnet" style="display:none">optimization</span><span data-if="python" style="display:none">optimization</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Kind of optimization.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'auto'</span>
    <span data-if="c" style="display:none">"auto"</span>
    <span data-if="cpp" style="display:none">"auto"</span>
    <span data-if="com" style="display:none">"auto"</span>
    <span data-if="dotnet" style="display:none">"auto"</span>
    <span data-if="python" style="display:none">"auto"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span>, <span data-if="hdevelop" style="display:inline">'none'</span><span data-if="c" style="display:none">"none"</span><span data-if="cpp" style="display:none">"none"</span><span data-if="com" style="display:none">"none"</span><span data-if="dotnet" style="display:none">"none"</span><span data-if="python" style="display:none">"none"</span>, <span data-if="hdevelop" style="display:inline">'point_reduction_high'</span><span data-if="c" style="display:none">"point_reduction_high"</span><span data-if="cpp" style="display:none">"point_reduction_high"</span><span data-if="com" style="display:none">"point_reduction_high"</span><span data-if="dotnet" style="display:none">"point_reduction_high"</span><span data-if="python" style="display:none">"point_reduction_high"</span>, <span data-if="hdevelop" style="display:inline">'point_reduction_low'</span><span data-if="c" style="display:none">"point_reduction_low"</span><span data-if="cpp" style="display:none">"point_reduction_low"</span><span data-if="com" style="display:none">"point_reduction_low"</span><span data-if="dotnet" style="display:none">"point_reduction_low"</span><span data-if="python" style="display:none">"point_reduction_low"</span>, <span data-if="hdevelop" style="display:inline">'point_reduction_medium'</span><span data-if="c" style="display:none">"point_reduction_medium"</span><span data-if="cpp" style="display:none">"point_reduction_medium"</span><span data-if="com" style="display:none">"point_reduction_medium"</span><span data-if="dotnet" style="display:none">"point_reduction_medium"</span><span data-if="python" style="display:none">"point_reduction_medium"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Metric" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Metric</span><span data-if="c" style="display:none">Metric</span><span data-if="cpp" style="display:none">Metric</span><span data-if="com" style="display:none">Metric</span><span data-if="dotnet" style="display:none">metric</span><span data-if="python" style="display:none">metric</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Match metric.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'use_polarity'</span>
    <span data-if="c" style="display:none">"use_polarity"</span>
    <span data-if="cpp" style="display:none">"use_polarity"</span>
    <span data-if="com" style="display:none">"use_polarity"</span>
    <span data-if="dotnet" style="display:none">"use_polarity"</span>
    <span data-if="python" style="display:none">"use_polarity"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'ignore_color_polarity'</span><span data-if="c" style="display:none">"ignore_color_polarity"</span><span data-if="cpp" style="display:none">"ignore_color_polarity"</span><span data-if="com" style="display:none">"ignore_color_polarity"</span><span data-if="dotnet" style="display:none">"ignore_color_polarity"</span><span data-if="python" style="display:none">"ignore_color_polarity"</span>, <span data-if="hdevelop" style="display:inline">'ignore_global_polarity'</span><span data-if="c" style="display:none">"ignore_global_polarity"</span><span data-if="cpp" style="display:none">"ignore_global_polarity"</span><span data-if="com" style="display:none">"ignore_global_polarity"</span><span data-if="dotnet" style="display:none">"ignore_global_polarity"</span><span data-if="python" style="display:none">"ignore_global_polarity"</span>, <span data-if="hdevelop" style="display:inline">'ignore_local_polarity'</span><span data-if="c" style="display:none">"ignore_local_polarity"</span><span data-if="cpp" style="display:none">"ignore_local_polarity"</span><span data-if="com" style="display:none">"ignore_local_polarity"</span><span data-if="dotnet" style="display:none">"ignore_local_polarity"</span><span data-if="python" style="display:none">"ignore_local_polarity"</span>, <span data-if="hdevelop" style="display:inline">'use_polarity'</span><span data-if="c" style="display:none">"use_polarity"</span><span data-if="cpp" style="display:none">"use_polarity"</span><span data-if="com" style="display:none">"use_polarity"</span><span data-if="dotnet" style="display:none">"use_polarity"</span><span data-if="python" style="display:none">"use_polarity"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Contrast" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Contrast</span><span data-if="c" style="display:none">Contrast</span><span data-if="cpp" style="display:none">Contrast</span><span data-if="com" style="display:none">Contrast</span><span data-if="dotnet" style="display:none">contrast</span><span data-if="python" style="display:none">contrast</span></code></b> (input_control)  </span><span>number(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[Union[int, str]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer / </span><span data-if="hdevelop" style="display:inline">string)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long / </span><span data-if="dotnet" style="display:none">string)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i> / </span><span data-if="cpp" style="display:none">HString)</span><span data-if="c" style="display:none"> (<i>Hlong</i> / </span><span data-if="c" style="display:none">char*)</span></span>
</div>
<p class="pardesc">Threshold or hysteresis thresholds for the contrast
of the object in the template image and optionally
minimum size of the object parts.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'auto'</span>
    <span data-if="c" style="display:none">"auto"</span>
    <span data-if="cpp" style="display:none">"auto"</span>
    <span data-if="com" style="display:none">"auto"</span>
    <span data-if="dotnet" style="display:none">"auto"</span>
    <span data-if="python" style="display:none">"auto"</span>
</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span>, <span data-if="hdevelop" style="display:inline">'auto_contrast'</span><span data-if="c" style="display:none">"auto_contrast"</span><span data-if="cpp" style="display:none">"auto_contrast"</span><span data-if="com" style="display:none">"auto_contrast"</span><span data-if="dotnet" style="display:none">"auto_contrast"</span><span data-if="python" style="display:none">"auto_contrast"</span>, <span data-if="hdevelop" style="display:inline">'auto_contrast_hyst'</span><span data-if="c" style="display:none">"auto_contrast_hyst"</span><span data-if="cpp" style="display:none">"auto_contrast_hyst"</span><span data-if="com" style="display:none">"auto_contrast_hyst"</span><span data-if="dotnet" style="display:none">"auto_contrast_hyst"</span><span data-if="python" style="display:none">"auto_contrast_hyst"</span>, <span data-if="hdevelop" style="display:inline">'auto_min_size'</span><span data-if="c" style="display:none">"auto_min_size"</span><span data-if="cpp" style="display:none">"auto_min_size"</span><span data-if="com" style="display:none">"auto_min_size"</span><span data-if="dotnet" style="display:none">"auto_min_size"</span><span data-if="python" style="display:none">"auto_min_size"</span>, 10, 20, 30, 40, 60, 80, 100, 120, 140, 160</p>
</div>
  <div class="par">
<div class="parhead">
<span id="MinContrast" class="parname"><b><code><span data-if="hdevelop" style="display:inline">MinContrast</span><span data-if="c" style="display:none">MinContrast</span><span data-if="cpp" style="display:none">MinContrast</span><span data-if="com" style="display:none">MinContrast</span><span data-if="dotnet" style="display:none">minContrast</span><span data-if="python" style="display:none">min_contrast</span></code></b> (input_control)  </span><span>integer <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Union[int, str]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (integer / </span><span data-if="hdevelop" style="display:inline">string)</span><span data-if="dotnet" style="display:none"> (<i>int</i> / </span><span data-if="dotnet" style="display:none">long / </span><span data-if="dotnet" style="display:none">string)</span><span data-if="cpp" style="display:none"> (<i>Hlong</i> / </span><span data-if="cpp" style="display:none">HString)</span><span data-if="c" style="display:none"> (<i>Hlong</i> / </span><span data-if="c" style="display:none">char*)</span></span>
</div>
<p class="pardesc">Minimum contrast of the objects in the search images.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'auto'</span>
    <span data-if="c" style="display:none">"auto"</span>
    <span data-if="cpp" style="display:none">"auto"</span>
    <span data-if="com" style="display:none">"auto"</span>
    <span data-if="dotnet" style="display:none">"auto"</span>
    <span data-if="python" style="display:none">"auto"</span>
</p>
<p class="pardesc"><span class="parcat">Suggested values:
      </span><span data-if="hdevelop" style="display:inline">'auto'</span><span data-if="c" style="display:none">"auto"</span><span data-if="cpp" style="display:none">"auto"</span><span data-if="com" style="display:none">"auto"</span><span data-if="dotnet" style="display:none">"auto"</span><span data-if="python" style="display:none">"auto"</span>, 1, 2, 3, 5, 7, 10, 20, 30, 40</p>
<p class="pardesc"><span class="parcat">Restriction:
      </span><code>MinContrast &lt; Contrast</code></p>
</div>
  <div class="par">
<div class="parhead">
<span id="Parameters" class="parname"><b><code><span data-if="hdevelop" style="display:inline">参数表</span><span data-if="c" style="display:none">参数表</span><span data-if="cpp" style="display:none">参数表</span><span data-if="com" style="display:none">参数表</span><span data-if="dotnet" style="display:none">参数表</span><span data-if="python" style="display:none">参数表</span></code></b> (input_control)  </span><span>string(-array) <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">MaybeSequence[str]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Parameters to be determined automatically.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'all'</span>
    <span data-if="c" style="display:none">"all"</span>
    <span data-if="cpp" style="display:none">"all"</span>
    <span data-if="com" style="display:none">"all"</span>
    <span data-if="dotnet" style="display:none">"all"</span>
    <span data-if="python" style="display:none">"all"</span>
</p>
<p class="pardesc"><span class="parcat">List of values:
      </span><span data-if="hdevelop" style="display:inline">'all'</span><span data-if="c" style="display:none">"all"</span><span data-if="cpp" style="display:none">"all"</span><span data-if="com" style="display:none">"all"</span><span data-if="dotnet" style="display:none">"all"</span><span data-if="python" style="display:none">"all"</span>, <span data-if="hdevelop" style="display:inline">'angle_step'</span><span data-if="c" style="display:none">"angle_step"</span><span data-if="cpp" style="display:none">"angle_step"</span><span data-if="com" style="display:none">"angle_step"</span><span data-if="dotnet" style="display:none">"angle_step"</span><span data-if="python" style="display:none">"angle_step"</span>, <span data-if="hdevelop" style="display:inline">'contrast'</span><span data-if="c" style="display:none">"contrast"</span><span data-if="cpp" style="display:none">"contrast"</span><span data-if="com" style="display:none">"contrast"</span><span data-if="dotnet" style="display:none">"contrast"</span><span data-if="python" style="display:none">"contrast"</span>, <span data-if="hdevelop" style="display:inline">'contrast_hyst'</span><span data-if="c" style="display:none">"contrast_hyst"</span><span data-if="cpp" style="display:none">"contrast_hyst"</span><span data-if="com" style="display:none">"contrast_hyst"</span><span data-if="dotnet" style="display:none">"contrast_hyst"</span><span data-if="python" style="display:none">"contrast_hyst"</span>, <span data-if="hdevelop" style="display:inline">'min_contrast'</span><span data-if="c" style="display:none">"min_contrast"</span><span data-if="cpp" style="display:none">"min_contrast"</span><span data-if="com" style="display:none">"min_contrast"</span><span data-if="dotnet" style="display:none">"min_contrast"</span><span data-if="python" style="display:none">"min_contrast"</span>, <span data-if="hdevelop" style="display:inline">'min_size'</span><span data-if="c" style="display:none">"min_size"</span><span data-if="cpp" style="display:none">"min_size"</span><span data-if="com" style="display:none">"min_size"</span><span data-if="dotnet" style="display:none">"min_size"</span><span data-if="python" style="display:none">"min_size"</span>, <span data-if="hdevelop" style="display:inline">'num_levels'</span><span data-if="c" style="display:none">"num_levels"</span><span data-if="cpp" style="display:none">"num_levels"</span><span data-if="com" style="display:none">"num_levels"</span><span data-if="dotnet" style="display:none">"num_levels"</span><span data-if="python" style="display:none">"num_levels"</span>, <span data-if="hdevelop" style="display:inline">'optimization'</span><span data-if="c" style="display:none">"optimization"</span><span data-if="cpp" style="display:none">"optimization"</span><span data-if="com" style="display:none">"optimization"</span><span data-if="dotnet" style="display:none">"optimization"</span><span data-if="python" style="display:none">"optimization"</span>, <span data-if="hdevelop" style="display:inline">'scale_c_step'</span><span data-if="c" style="display:none">"scale_c_step"</span><span data-if="cpp" style="display:none">"scale_c_step"</span><span data-if="com" style="display:none">"scale_c_step"</span><span data-if="dotnet" style="display:none">"scale_c_step"</span><span data-if="python" style="display:none">"scale_c_step"</span>, <span data-if="hdevelop" style="display:inline">'scale_r_step'</span><span data-if="c" style="display:none">"scale_r_step"</span><span data-if="cpp" style="display:none">"scale_r_step"</span><span data-if="com" style="display:none">"scale_r_step"</span><span data-if="dotnet" style="display:none">"scale_r_step"</span><span data-if="python" style="display:none">"scale_r_step"</span>, <span data-if="hdevelop" style="display:inline">'scale_step'</span><span data-if="c" style="display:none">"scale_step"</span><span data-if="cpp" style="display:none">"scale_step"</span><span data-if="com" style="display:none">"scale_step"</span><span data-if="dotnet" style="display:none">"scale_step"</span><span data-if="python" style="display:none">"scale_step"</span></p>
</div>
  <div class="par">
<div class="parhead">
<span id="ParameterName" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ParameterName</span><span data-if="c" style="display:none">ParameterName</span><span data-if="cpp" style="display:none">ParameterName</span><span data-if="com" style="display:none">ParameterName</span><span data-if="dotnet" style="display:none">parameterName</span><span data-if="python" style="display:none">parameter_name</span></code></b> (output_control)  </span><span>string-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[str]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Name of the automatically determined parameter.</p>
</div>
  <div class="par">
<div class="parhead">
<span id="ParameterValue" class="parname"><b><code><span data-if="hdevelop" style="display:inline">ParameterValue</span><span data-if="c" style="display:none">ParameterValue</span><span data-if="cpp" style="display:none">ParameterValue</span><span data-if="com" style="display:none">ParameterValue</span><span data-if="dotnet" style="display:none">parameterValue</span><span data-if="python" style="display:none">parameter_value</span></code></b> (output_control)  </span><span>number-array <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">Sequence[Union[int, float]]</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (real / </span><span data-if="hdevelop" style="display:inline">integer)</span><span data-if="dotnet" style="display:none"> (<i>double</i> / </span><span data-if="dotnet" style="display:none">int / </span><span data-if="dotnet" style="display:none">long)</span><span data-if="cpp" style="display:none"> (<i>double</i> / </span><span data-if="cpp" style="display:none">Hlong)</span><span data-if="c" style="display:none"> (<i>double</i> / </span><span data-if="c" style="display:none">Hlong)</span></span>
</div>
<p class="pardesc">Value of the automatically determined parameter.</p>
</div>
<h2 id="sec_result">结果</h2>
<p>如果参数均有效，算子
<code><span data-if="hdevelop" style="display:inline">determine_shape_model_params</span><span data-if="c" style="display:none">determine_shape_model_params</span><span data-if="cpp" style="display:none">DetermineShapeModelParams</span><span data-if="com" style="display:none">DetermineShapeModelParams</span><span data-if="dotnet" style="display:none">DetermineShapeModelParams</span><span data-if="python" style="display:none">determine_shape_model_params</span></code> 返回值 <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .  If
necessary an exception is raised. If the parameters
<a href="#NumLevels"><i><code><span data-if="hdevelop" style="display:inline">NumLevels</span><span data-if="c" style="display:none">NumLevels</span><span data-if="cpp" style="display:none">NumLevels</span><span data-if="com" style="display:none">NumLevels</span><span data-if="dotnet" style="display:none">numLevels</span><span data-if="python" style="display:none">num_levels</span></code></i></a> and <a href="#Contrast"><i><code><span data-if="hdevelop" style="display:inline">Contrast</span><span data-if="c" style="display:none">Contrast</span><span data-if="cpp" style="display:none">Contrast</span><span data-if="com" style="display:none">Contrast</span><span data-if="dotnet" style="display:none">contrast</span><span data-if="python" style="display:none">contrast</span></code></i></a> are chosen such that the
model contains too few points, or the input image does not contain a
sufficient number of significant features, the error 8510 is
raised.</p>
<h2 id="sec_predecessors">可能的前置算子</h2>
<p>
<code><a href="draw_region.html"><span data-if="hdevelop" style="display:inline">draw_region</span><span data-if="c" style="display:none">draw_region</span><span data-if="cpp" style="display:none">DrawRegion</span><span data-if="com" style="display:none">DrawRegion</span><span data-if="dotnet" style="display:none">DrawRegion</span><span data-if="python" style="display:none">draw_region</span></a></code>, 
<code><a href="reduce_domain.html"><span data-if="hdevelop" style="display:inline">reduce_domain</span><span data-if="c" style="display:none">reduce_domain</span><span data-if="cpp" style="display:none">ReduceDomain</span><span data-if="com" style="display:none">ReduceDomain</span><span data-if="dotnet" style="display:none">ReduceDomain</span><span data-if="python" style="display:none">reduce_domain</span></a></code>, 
<code><a href="threshold.html"><span data-if="hdevelop" style="display:inline">threshold</span><span data-if="c" style="display:none">threshold</span><span data-if="cpp" style="display:none">Threshold</span><span data-if="com" style="display:none">Threshold</span><span data-if="dotnet" style="display:none">Threshold</span><span data-if="python" style="display:none">threshold</span></a></code>
</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="create_generic_shape_model.html"><span data-if="hdevelop" style="display:inline">create_generic_shape_model</span><span data-if="c" style="display:none">create_generic_shape_model</span><span data-if="cpp" style="display:none">CreateGenericShapeModel</span><span data-if="com" style="display:none">CreateGenericShapeModel</span><span data-if="dotnet" style="display:none">CreateGenericShapeModel</span><span data-if="python" style="display:none">create_generic_shape_model</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Matching</p>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
